Unique এবং Check Constraints

Database Tutorials - ডিবি২ (DB2) DB2 Data Types এবং Constraints |
280
280

Constraints হল ডেটাবেসের একটি অত্যন্ত গুরুত্বপূর্ণ অংশ যা ডেটার অখণ্ডতা (integrity) এবং সঠিকতা (accuracy) নিশ্চিত করতে সাহায্য করে। Unique এবং Check constraints দুটি গুরুত্বপূর্ণ কনস্ট্রেইন্ট যা ডেটাবেস টেবিলের ডেটা সঠিকভাবে সংগঠিত ও বৈধ রাখতে ব্যবহৃত হয়। এখানে এই কনস্ট্রেইন্টগুলির ব্যবহার এবং সুবিধা সম্পর্কে বিস্তারিত আলোচনা করা হলো।


Unique Constraint

Unique Constraint একটি কনস্ট্রেইন্ট যা একটি কলামে ডুপ্লিকেট মান (duplicate values) এড়াতে সাহায্য করে। এটি নিশ্চিত করে যে কোনো নির্দিষ্ট কলামে প্রতিটি মান অনন্য (unique) হবে, অর্থাৎ একই মান একাধিক রেকর্ডে থাকতে পারে না।

বৈশিষ্ট্য:

  • ডুপ্লিকেট মান নিষিদ্ধ: Unique কনস্ট্রেইন্ট ব্যবহার করলে ঐ কলামের জন্য ডুপ্লিকেট মান প্রবেশ করতে পারবেনা।
  • NULL অনুমোদিত: এক্ষেত্রে, কলামে NULL মান থাকতে পারে (কিছু RDBMS-এ একাধিক NULL মানের অনুমতি থাকে) তবে NULL এবং অন্যান্য মানের তুলনা করা হয় না।
  • একাধিক Unique কনস্ট্রেইন্ট: একেক টেবিলে একাধিক Unique কনস্ট্রেইন্ট ব্যবহার করা যেতে পারে, এবং প্রতিটি কলামের জন্য আলাদা আলাদা ইনডেক্স তৈরি হয়।

উদাহরণ:

ধরা যাক, আপনি একটি Customers টেবিল তৈরি করছেন, যেখানে প্রতিটি Email অবশ্যই অনন্য (unique) হবে। এই ক্ষেত্রে Email কলামে Unique কনস্ট্রেইন্ট ব্যবহার করা হবে।

CREATE TABLE Customers (
    CustomerID INT PRIMARY KEY,
    CustomerName VARCHAR(100),
    Email VARCHAR(100) UNIQUE
);

এখানে, Email কলামে Unique কনস্ট্রেইন্ট নির্ধারণ করা হয়েছে, যার ফলে এই কলামে একই ইমেইল একাধিক বার থাকতে পারবে না।


Check Constraint

Check Constraint হল একটি কনস্ট্রেইন্ট যা টেবিলের কলামে ডেটা প্রবেশের আগে নির্দিষ্ট শর্ত বা নিয়ম বাধ্যতামূলক করে। এই কনস্ট্রেইন্টটি কলামের মান যাচাই করে এবং শুধুমাত্র সেই মানগুলি অনুমোদন করে যা নির্ধারিত শর্ত পূর্ণ করে।

বৈশিষ্ট্য:

  • শর্ত যাচাই: Check কনস্ট্রেইন্ট একটি শর্ত ব্যবহার করে ডেটার বৈধতা নিশ্চিত করে। এই শর্তটি কলামের মানের উপর ভিত্তি করে হতে পারে (যেমন, কোনো সংখ্যা শুধুমাত্র ইতিবাচক হতে হবে, বা বয়স ১৮ বছরের বেশি হতে হবে ইত্যাদি)।
  • ডেটার অখণ্ডতা নিশ্চিতকরণ: এটি ডেটার অখণ্ডতা নিশ্চিত করতে ব্যবহৃত হয়, যেমন গ্রাহকের বয়স ১৮ এর নিচে হতে পারে না।
  • একাধিক শর্ত: একাধিক শর্ত ব্যবহার করে একটি কলামে Check কনস্ট্রেইন্ট প্রয়োগ করা যেতে পারে।

উদাহরণ:

ধরা যাক, আপনি একটি Employees টেবিল তৈরি করছেন যেখানে Age কলামে কর্মচারীর বয়স ১৮ বছরের বেশি হতে হবে। এই শর্তটি Check কনস্ট্রেইন্ট দিয়ে নির্ধারণ করা হবে।

CREATE TABLE Employees (
    EmployeeID INT PRIMARY KEY,
    EmployeeName VARCHAR(100),
    Age INT CHECK (Age >= 18)
);

এখানে, Age কলামে Check Constraint দেওয়া হয়েছে, যার মাধ্যমে নিশ্চিত করা হচ্ছে যে, কর্মচারীর বয়স ১৮ বছরের নিচে হবে না। এই শর্তটি ভঙ্গ করলে ডেটা এন্ট্রি সম্ভব হবে না।


Unique এবং Check Constraints এর মধ্যে পার্থক্য

বৈশিষ্ট্যUnique ConstraintCheck Constraint
কাজকলামে ডুপ্লিকেট মান প্রতিরোধ করে।কলামে নির্দিষ্ট শর্ত বা মান যাচাই করে।
নাল মানNULL মান অনুমোদিত (বেশিরভাগ ক্ষেত্রে)।NULL মান ব্যবহার করা যাবে, তবে শর্তের উপর নির্ভর করে।
প্রকারএকটি কলামে শুধুমাত্র একক মান থাকতে পারে।কলামের মান অবশ্যই একটি নির্দিষ্ট শর্ত পূর্ণ করতে হবে।
ব্যবহারডেটার এককতা নিশ্চিত করতে ব্যবহৃত হয়।ডেটার বৈধতা এবং সঠিকতা নিশ্চিত করতে ব্যবহৃত হয়।

ব্যবহারিক উদাহরণ

1. Unique Constraint:

ধরা যাক, আপনি একটি Student টেবিল তৈরি করছেন যেখানে StudentID এবং RollNo উভয়ই অনন্য হতে হবে।

CREATE TABLE Student (
    StudentID INT PRIMARY KEY,
    Name VARCHAR(100),
    RollNo INT UNIQUE
);

এখানে, RollNo কলামে Unique কনস্ট্রেইন্ট দেওয়ার মাধ্যমে নিশ্চিত করা হচ্ছে যে, প্রতিটি ছাত্রের রোল নম্বর একক হবে এবং ডুপ্লিকেট রোল নম্বর প্রবেশ করতে পারবে না।

2. Check Constraint:

ধরা যাক, আপনি একটি Product টেবিল তৈরি করছেন যেখানে Price কলামের মান ১০০ এর বেশি হতে হবে। এটি Check কনস্ট্রেইন্ট ব্যবহার করে নির্ধারণ করা হবে।

CREATE TABLE Product (
    ProductID INT PRIMARY KEY,
    ProductName VARCHAR(100),
    Price DECIMAL(10, 2) CHECK (Price > 100)
);

এখানে, Price কলামে Check Constraint ব্যবহার করা হয়েছে, যার মাধ্যমে নিশ্চিত করা হচ্ছে যে, প্রতিটি পণ্যের দাম ১০০ এর বেশি হবে।


সারসংক্ষেপ

  • Unique Constraint ডেটাবেস টেবিলের একটি কলামে ডুপ্লিকেট মান প্রতিরোধ করে এবং প্রতিটি রেকর্ডের জন্য ইউনিক মানের নিশ্চয়তা প্রদান করে।
  • Check Constraint একটি কলামে ডেটা প্রবেশের পূর্বে নির্দিষ্ট শর্ত যাচাই করে, যেমন বয়সের সীমা বা দাম নির্ধারণ করা।
  • এই কনস্ট্রেইন্টগুলির মাধ্যমে ডেটাবেসে ডেটার অখণ্ডতা, সঠিকতা এবং মানের নিশ্চয়তা নিশ্চিত করা যায়।
common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion